import java.util.Scanner;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class StudentManager{
    public static void main(String[] args)throws IOException {//采用arraylist数组集合存储数据
        ArrayList<Student> a=new ArrayList<Student>();//优点：可动态扩容，队列存储，增删改查效率更高
        ArrayList<Teacher> b=new ArrayList<Teacher>();//缺点：线程不安全
        while(true){//死循环
            System.out.println("-----输入数字，执行操作-----");
            System.out.print("1.添加学生 ");
            System.out.print("2.添加教职工 ");
            System.out.print("3.删除学生 ");
            System.out.println("4.删除教职工");
            System.out.print("5.查询一个学生 ");
            System.out.print("6.查询一个教职工 ");
            System.out.print("7.修改一个学生 ");
            System.out.println("8.修改一个教职工");
            System.out.print("9.显示所有数据 ");
            System.out.print("10.统计数据 ");
            System.out.print("11.保存数据 ");
            System.out.println("12.读取数据");
            System.out.print("13.计算水费和电费");
            System.out.println("14.退出系统");
            System.out.println("你想干嘛？");
            Scanner sc=new Scanner(System.in);
            String n=sc.nextLine();
            switch(n){
                case "1"://添加学生
                abc(a);
                break;
                case "2"://添加教职工
                abt(b);
                break;
                case "3"://删除学生
                ds(a);
                break;
                case "4"://删除教职工
                dt(b);
                break;
                case "5"://查询学生
                cs(a);
                break;
                case "6"://查询教职工
                ct(b);
                break;
                case "7"://修改学生
                us(a);
                break;
                case "8"://修改教职工
                ut(b);
                break;
                case "9"://显示数据
                bs(a);
                bt(b);
                break;
                case "10"://统计数据
                tjs(a);
                tjt(b);
                break;
                case "11"://保存数据
                bcs(a);
                bct(b);
                break;
                case "12"://打印数据
                dys(a);
                dyt(b);
                break;
                case "13"://计算水费，电费
                jss(a);
                jst(b);
                break;
                case "14"://结束进程
                System.out.println("退出成功");
                System.exit(0);//一个强行退出的方法
                default:
                System.out.println("请重新输入");
            }
        }
    }
    public static void abc(ArrayList<Student> a) {//录入学生信息
        Scanner sc=new Scanner(System.in);//录入数据
        String uid=null;
        while(true){
        System.out.println("请输入学号");
        uid=sc.nextLine();
        boolean f=ks(a,uid);
        if(f)
        {System.out.println("重复，请重新输入");}//因为是添加数据，因此不用跳出循环
        else{break;} }
        System.out.println("请输入学生姓名");
        String na=sc.nextLine();
        System.out.println("请输入学生性别");
        String ge=sc.nextLine();
        System.out.println("请输入学生年龄");
        String ag=sc.nextLine();
        System.out.println("请输入学生班级");
        String add=sc.nextLine();
        System.out.println("用了多少度电？");
        double usedi=sc.nextInt();
        System.out.println("用了多少吨水？");
        double usesh=sc.nextInt();
        System.out.println("");
        Student s=new Student();//创建学生对象，把输入数据传入学生对象变量中
        s.setUid(uid);
        s.setNa(na);
        s.setGe(ge);
        s.setAg(ag);
        s.setAdd(add);
        s.setUsedi(usedi);
        s.setUsesh(usesh);
        a.add(s);//往集合添加对象数据
        System.out.println("添加成功");
    }
    public static void abt(ArrayList<Teacher> b) {//录入教职工信息
        Scanner sc=new Scanner(System.in);//录入数据
        String uid=null;
        while(true){
        System.out.println("请输入教职工职工号");
        uid=sc.nextLine();
        boolean f=kt(b, uid);
        if(f)
        { System.out.println("重复，请重新输入");}//因为是添加数据，因此不用跳出循环
        else{break;} }
        System.out.println("请输入教职工姓名");
        String na=sc.nextLine();
        System.out.println("请输入教职工性别");
        String ge=sc.nextLine();
        System.out.println("请输入教职工年龄");
        String ag=sc.nextLine();
        System.out.println("请输入教职工工作部门");
        String add=sc.nextLine();
        System.out.println("用了多少度电？");
        double usedi=sc.nextInt();
        System.out.println("用了多少吨水？");
        double usesh=sc.nextInt();
        System.out.println("");
        Teacher t=new Teacher();//创建教职工对象，把输入数据传入教职工对象变量中
        t.setUid(uid);
        t.setNa(na);
        t.setGe(ge);
        t.setAg(ag);
        t.setAdd(add);
        t.setUsedi(usedi);
        t.setUsesh(usesh);
        b.add(t);//往集合添加对象数据
        System.out.println("添加成功");
    }
    public static boolean ks(ArrayList<Student> a,String uid) {
        boolean f=false;//学号判断有无这个学生
        for(int x=0;x<a.size();x++)
        {
            Student s=a.get(x);
            if(s.getUid().equals(uid))
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static boolean kt(ArrayList<Teacher> b,String uid) {
        boolean f=false;//职工号判断有无这个教职工
        for(int x=0;x<b.size();x++)
        {
            Teacher s=b.get(x);
            if(s.getUid().equals(uid))
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static boolean kss(ArrayList<Student> a,Double usesh) {
        boolean f=false;//用水量判断有无这个学生
        for(int x=0;x<a.size();x++)
        {
            Student s=a.get(x);
            if(s.getUsesh()==usesh)
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static boolean kts(ArrayList<Teacher> b,Double usesh) {
        boolean f=false;//用水量判断有无这个教职工
        for(int x=0;x<b.size();x++)
        {
            Teacher s=b.get(x);
            if(s.getUsesh()==usesh)
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static boolean ksd(ArrayList<Student> a,Double usedi) {
        boolean f=false;//用电量判断有无这个学生
        for(int x=0;x<a.size();x++)
        {
            Student s=a.get(x);
            if(s.getUsedi()==usedi)
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static boolean ktd(ArrayList<Teacher> b,Double usedi) {
        boolean f=false;//用电量判断有无这个教职工
        for(int x=0;x<b.size();x++)
        {
            Teacher s=b.get(x);
            if(s.getUsedi()==usedi)
            {
                f=true;
                break;
            }
        }
        return f; 
    }
    public static void bs(ArrayList<Student> a) {//遍历学生数组
        if(a.isEmpty())
        {
            System.out.println("数组中啥都没有");
            return;//判断数组是否为空
        }
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t班级\t\t用电量\t\t用水量");
        for(int i=0;i<a.size();i++)
        {
            Student s=a.get(i);
            System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"
            +s.getGe()+"\t\t"+s.getAg()+"\t\t"+s.getAdd()+"\t\t"+s.getUsedi()+"\t\t"+s.getUsesh());
        }
    } 
    public static void bt(ArrayList<Teacher> b) {//遍历老师数组
        if(b.isEmpty())
        {
            System.out.println("数组中啥都没有");
            return;//判断数组是否为空
        }
        System.out.println("职工号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t工作部门\t用电量\t\t用水量");
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"
            +t.getGe()+"\t\t"+t.getAg()+"\t\t"+t.getAdd()+"\t\t"+t.getUsedi()+"\t\t"+t.getUsesh());
        }
    } 
    public static void cs(ArrayList<Student> a) {//学号,用水量，用电量查询学生数据
        if(a.isEmpty())
        {
            System.out.println("数组中啥都没有");
            return;
        }
        Scanner sc=new Scanner(System.in);
        String n;
        while(true){
        System.out.println("请输入查询方式 :1.学号2.用水量3.用电量4.不想查了");
        n=sc.nextLine();
        switch(n){
            case "1":
            xhcx(a);
            break;
            case "2":
            ysl(a);
            break;
            case "3":
            ydl(a);
            break;
            case "4":
            System.out.println("退出查询");
            return;
            default:
            System.out.println("请重新输入");
        }
    }
}
    public static void ct(ArrayList<Teacher> b) {//职工号,用水量，用电量查询教职工数据
        if(b.isEmpty())
        {
            System.out.println("数组中啥都没有");
            return;
        }
        Scanner sc=new Scanner(System.in);
        String n;
        while(true){
        System.out.println("请输入查询方式 :1.职工号2.用水量3.用电量4.不想查了");
        n=sc.nextLine();
        switch(n){
            case "1":
            zhcx(b);
            break;
            case "2":
            yslt(b);
            break;
            case "3":
            ydlt(b);
            break;
            case "4":
            System.out.println("退出查询");
            return;
            default:
            System.out.println("请重新输入");
        }
    }
        }
    public static void ds(ArrayList<Student> a) {//删除学生数据
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入学生号");
        String uid=sc.nextLine();
        int in=-1;
        for(int i=0;i<a.size();i++)
        {
            Student s=a.get(i);
            if(s.getUid().equals(uid))
            {
                in=i;
                break;//按照输入编号找人，找得到就给出下标并remove，找不到就提示
            }
        }
        if(in==-1)
        {
            System.out.println("记录为空！");
        }
        else
        {
        a.remove(in);
        System.out.println("删除成功!");
        }
  } 
    public static void dt(ArrayList<Teacher> b) {//删除教职工数据
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入职工号");
        String uid=sc.nextLine();
        int in=-1;
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            if(t.getUid().equals(uid))
            {
                in=i;
                break;//按照输入编号找人，找得到就给出下标并remove，找不到就提示
            }
        }
        if(in==-1)
        {
            System.out.println("记录为空！");
        }
        else
        {
        b.remove(in);
        System.out.println("删除成功!");
        }
  } 
    public static void us(ArrayList<Student> a) {//修改学生数据
        if(a.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        Scanner sc=new Scanner(System.in);
        String uid;
        while(true){
        System.out.println("请输入学生学号");
        uid=sc.nextLine();
        boolean f=ks(a,uid);
        if(!f)
        {System.out.println("该学生不存在，请重新输入");
        return;}//直接跳出去，不往下执行
        else{break;} }
        System.out.println("请输入学生名字");
        String na=sc.nextLine();
        System.out.println("请输入学生性别");
        String ge=sc.nextLine();
        System.out.println("请输入学生年龄");
        String ag=sc.nextLine();
        System.out.println("请输入学生班级");
        String add=sc.nextLine();
        System.out.println("用了多少度电？");
        double usedi=sc.nextInt();
        System.out.println("用了多少吨水？");
        double usesh=sc.nextInt();
        Student s=new Student();//创建学生对象，把输入数据传入学生对象变量中
        s.setUid(uid);
        s.setNa(na);
        s.setGe(ge);
        s.setAg(ag);
        s.setAdd(add);
        s.setUsedi(usedi);
        s.setUsesh(usesh);
        for(int x=0;x<a.size();x++)
        {
            Student k=a.get(x);
            if(k.getUid().equals(uid))
            {
                a.set(x,s);//将编辑的对象替代指定位置的对象
                break;
            }
        }
        System.out.println("修改成功!");
    }
    public static void ut(ArrayList<Teacher> b) {//修改教职工
        if(b.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        Scanner sc=new Scanner(System.in);
        String uid;
        while(true){
        System.out.println("请输入职工号");
        uid=sc.nextLine();
        boolean f=kt(b,uid);
        if(!f)
        {System.out.println("该教职工不存在，请重新输入");
        return;}//直接跳出去，不往下执行
        else{break;} }
        System.out.println("请输入教职工名字");
        String na=sc.nextLine();
        System.out.println("请输入教职工性别");
        String ge=sc.nextLine();
        System.out.println("请输入教职工年龄");
        String ag=sc.nextLine();
        System.out.println("请输入教职工工作部门");
        String add=sc.nextLine();
        System.out.println("用了多少度电？");
        double usedi=sc.nextInt();
        System.out.println("用了多少吨水？");
        double usesh=sc.nextInt();
        Teacher t=new Teacher();
        t.setUid(uid);
        t.setNa(na);
        t.setGe(ge);
        t.setAg(ag);
        t.setAdd(add);
        t.setUsedi(usedi);
        t.setUsesh(usesh);
        for(int x=0;x<b.size();x++)
        {
            Teacher k=b.get(x);
            if(k.getUid().equals(uid))
            {
                b.set(x,t);//将编辑的对象替代指定位置的对象
                break;
            }
        }
        System.out.println("修改成功");
    } 
    public static void tjs(ArrayList<Student> a) {//显示学生水电费，欠费情况
        if(a.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t班级\t\t用电量\t\t用水量\t\t电费\t\t水费\t\t欠交水费\t\t欠交电费");
        for(int i=0;i<a.size();i++)
        {
            Student s=a.get(i);
            System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"+s.getGe()+"\t\t"
            +s.getAg()+"\t\t"+s.getAdd()+"\t\t"+s.getUsedi()+"\t\t"+s.getUsesh()+"\t\t"+s.df()+"\t\t"+s.sf()+"\t\t"+s.qdf()+"\t\t\t"+s.qsf());
        }
    }
    public static void tjt(ArrayList<Teacher> b) {//显示教职工水电费，欠费情况
        if(b.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        System.out.println("职工号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t工作部门\t用电量\t\t用水量\t\t电费\t\t水费\t\t欠交水费\t\t欠交电费");
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"+t.getGe()+"\t\t"
            +t.getAg()+"\t\t"+t.getAdd()+"\t\t"+t.getUsedi()+"\t\t"+t.getUsesh()+"\t\t"+t.df()+"\t\t"+t.sf()+"\t\t"+t.qdf()+"\t\t\t"+t.qsf());
        }
    }
    public static void bcs(ArrayList<Student> a)throws IOException {//为了防止字节流读取时出现的乱码问题，故使用字符流
        BufferedWriter br=new BufferedWriter(new FileWriter("D:\\luan\\tu\\001\\xue.txt"));//写进去文件地址
        for (Student s:a) {
            StringBuilder sb=new StringBuilder();//创建自定义拼接字符串
            sb.append(s.getUid()).append(",").append(s.getNa()).append(",").append(s.getGe())
            .append(",").append(s.getAg()).append(",").append(s.getAdd()).append(",")
            .append(s.getUsedi()).append(",").append(s.getUsesh());//按照格式写入文件
            br.write(sb.toString());
            br.newLine();;//换行继续写
            br.flush();//文件刷新
        }
        System.out.println("保存成功！");
        br.close();//释放资源
    }
    public static void bct(ArrayList<Teacher> b)throws IOException {//为了防止字节流读取时出现的乱码问题，故使用字符流
        BufferedWriter br=new BufferedWriter(new FileWriter("D:\\luan\\tu\\001\\jiao.txt"));//写进去文件地址
        for (Teacher t:b) {
            StringBuilder sb=new StringBuilder();//创建自定义拼接字符串
            sb.append(t.getUid()).append(",").append(t.getNa()).append(",").append(t.getGe())
            .append(",").append(t.getAg()).append(",").append(t.getAdd()).append(",")
            .append(t.getUsedi()).append(",").append(t.getUsesh());//按照格式写入文件
            br.write(sb.toString());
            br.newLine();//换行继续写
            br.flush();//文件刷新
        }
        System.out.println("保存成功！");
        br.close();//释放资源
    }
    public static void dys(ArrayList<Student> a)throws IOException {//为了防止字节流读取时出现的乱码问题，故使用字符流
        BufferedReader br=new BufferedReader(new FileReader("D:\\luan\\tu\\001\\xue.txt"));//读出来文件地址
        String l;
        while((l=br.readLine())!=null){//从文件里面读取一行数据，读完就跳出循环
            String[] sa=l.split(",");//一个api:按照指定符号将字符串进行分割，存入指定字符串数组
            Student s=new Student();
            s.setUid(sa[0]);
            s.setNa(sa[1]);
            s.setGe(sa[2]);
            s.setAg(sa[3]);
            s.setAdd(sa[4]);
            s.setUsedi(Double.parseDouble(sa[5]));//一个巧合，当时联想到interger.parseint()方法：string强转int
            s.setUsesh(Double.parseDouble(sa[6]));//误打误撞就发现了这个方法：string强转double
            if(!ks(a,sa[0])){
                a.add(s);
            }
        }
        System.out.println("读取数据成功！");
        br.close();//释放资源
    }
    public static void dyt(ArrayList<Teacher> b)throws IOException {//为了防止字节流读取时出现的乱码问题，故使用字符流
        BufferedReader br=new BufferedReader(new FileReader("D:\\luan\\tu\\001\\jiao.txt"));//读出来文件地址
        String l;
        while((l=br.readLine())!=null){//从文件里面读取一行数据，读完就跳出循环
            String[] sa=l.split(",");//一个api:按照指定符号将字符串进行分割，存入指定字符串数组
            Teacher t=new Teacher();
            t.setUid(sa[0]);
            t.setNa(sa[1]);
            t.setGe(sa[2]);
            t.setAg(sa[3]);
            t.setAdd(sa[4]);
            t.setUsedi(Double.parseDouble(sa[5]));//一个巧合，当时联想到interger.parseint()方法：string强转int
            t.setUsesh(Double.parseDouble(sa[6]));//误打误撞就发现了这个方法：string强转double
            if(!kt(b,sa[0])){
                b.add(t);
            }
        }
        System.out.println("读取数据成功！");
        br.close();//释放资源
    }
    public static void jss(ArrayList<Student> a) {//遍历学生水电费，再打印总和
         if(a.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        double zd=0;
        double zs=0;
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t电费\t\t水费");
        for(int i=0;i<a.size();i++)
        {
            Student s=a.get(i);
            System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"+s.df()+"\t\t"+s.sf());
            zd+=s.df();
            zs+=s.sf();
        }
        System.out.println("学生总电费："+zd+"学生总水费："+zs);
    }
    public static void jst(ArrayList<Teacher> b) {//遍历教职工水电费，再打印总和
         if(b.isEmpty())
        {
            System.out.println("啥都没有");
            return;
        }
        double zd=0;
        double zs=0;
        System.out.println("教职工\t\t\t\t\t\t姓名\t\t\t电费\t\t水费");
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"+t.df()+"\t\t"+t.sf());
            zd+=t.df();
            zs+=t.sf();
        }
        System.out.println("教职工总电费："+zd+"教职工总水费："+zs);
    }
    public static void xhcx(ArrayList<Student> a){//学号查询
        Scanner sc=new Scanner(System.in);
        String uid;
        while(true){
        System.out.println("请输入学生学号");
        uid=sc.nextLine();
        boolean f=ks(a,uid);
        if(!f){
            System.out.println("该学生不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;} //对象存在
        }
        int in=-1;
        for(int i=0;i<a.size();i++)
           {
            Student s=a.get(i);
            if(s.getUid().equals(uid))
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t班级\t\t用电量\t\t用水量");
        Student s=a.get(in);
        System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"+s.getGe()+"\t\t"
        +s.getAg()+"\t\t"+s.getAdd()+"\t\t"+s.getUsedi()+"\t\t"+s.getUsesh());
        }
    public static void zhcx(ArrayList<Teacher> b) {
        Scanner sc=new Scanner(System.in);
        String uid;
        while(true){
        System.out.println("请输入教职工职工号");
        uid=sc.nextLine();
        boolean f=kt(b,uid);
        if(!f){
            System.out.println("该教职工不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;}  }//对象存在
        int in=-1;
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            if(t.getUid().equals(uid))
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("职工号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t工作部门\t用电量\t\t用水量");
        Teacher t=b.get(in);//拿出来
        System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"+t.getGe()+"\t\t"
        +t.getAg()+"\t\t"+t.getAdd()+"\t\t"+t.getUsedi()+"\t\t"+t.getUsesh());
        }
    public static void ysl(ArrayList<Student> a) {
        Scanner sc=new Scanner(System.in);
        double usesh;
        while(true){
        System.out.println("请输入学生用水量");
        usesh=sc.nextDouble();
        boolean f=kss(a,usesh);
        if(!f){
            System.out.println("该学生不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;} //对象存在
        }
        int in=-1;
        for(int i=0;i<a.size();i++)
           {
            Student s=a.get(i);
            if(s.getUsesh()==usesh)
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t班级\t\t用电量\t\t用水量");
        Student s=a.get(in);
        System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"+s.getGe()+"\t\t"
        +s.getAg()+"\t\t"+s.getAdd()+"\t\t"+s.getUsedi()+"\t\t"+s.getUsesh());
    }
    public static void yslt(ArrayList<Teacher> b) {
        Scanner sc=new Scanner(System.in);
        double usesh;
        while(true){
        System.out.println("请输入教职工用水量");
        usesh=sc.nextDouble();
        boolean f=kts(b,usesh);
        if(!f){
            System.out.println("该教职工不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;}  }//对象存在
        int in=-1;
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            if(t.getUsesh()==usesh)
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("职工号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t工作部门\t用电量\t\t用水量");
        Teacher t=b.get(in);//拿出来
        System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"+t.getGe()+"\t\t"
        +t.getAg()+"\t\t"+t.getAdd()+"\t\t"+t.getUsedi()+"\t\t"+t.getUsesh());
        }
    public static void ydl(ArrayList<Student> a) {
        Scanner sc=new Scanner(System.in);
        double usedi;
        while(true){
        System.out.println("请输入学生用电量");
        usedi=sc.nextDouble();
        boolean f=ksd(a,usedi);
        if(!f){
            System.out.println("该学生不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;} //对象存在
        }
        int in=-1;
        for(int i=0;i<a.size();i++)
           {
            Student s=a.get(i);
            if(s.getUsedi()==usedi)
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("学号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t班级\t\t用电量\t\t用水量");
        Student s=a.get(in);
        System.out.println(s.getUid()+"\t\t\t\t\t"+s.getNa()+"\t\t"+s.getGe()+"\t\t"
        +s.getAg()+"\t\t"+s.getAdd()+"\t\t"+s.getUsedi()+"\t\t"+s.getUsesh());
        }
    public static void ydlt(ArrayList<Teacher> b) {
        Scanner sc=new Scanner(System.in);
        double usedi;
        while(true){
        System.out.println("请输入教职工用水量");
        usedi=sc.nextDouble();
        boolean f=ktd(b,usedi);
        if(!f){
            System.out.println("该教职工不存在，请重新输入");
            return;}//直接跳出去，不往下执行
        else{
            break;}  }//对象存在
        int in=-1;
        for(int i=0;i<b.size();i++)
        {
            Teacher t=b.get(i);
            if(t.getUsedi()==usedi)
            {
                in=i;//找到了，赋值为i
                break;
            }
        }
        System.out.println("职工号\t\t\t\t\t\t姓名\t\t\t性别\t\t年龄\t\t工作部门\t用电量\t\t用水量");
        Teacher t=b.get(in);//拿出来
        System.out.println(t.getUid()+"\t\t\t\t\t"+t.getNa()+"\t\t"+t.getGe()+"\t\t"
        +t.getAg()+"\t\t"+t.getAdd()+"\t\t"+t.getUsedi()+"\t\t"+t.getUsesh());
        }
}